from django.urls import path
from .views import (
    # 登录和退出登录视图
    LoginView,
    LogoutView,

    # 菜单视图
    MenuListView,

    # 资源视图
    ResourceListView,
    GetResourceAPIView,

    # 接口视图
    ResourceInterfaceListView,
    ResourceInterfaceCreateView,
    ResourceInterfaceUpdateView,
    ResourceInterfaceDeleteView,

    # 角色视图
    CreateRoleView,
    UpdateRoleView,
    DeleteRoleView,
    RoleListView,
    
    # 用户视图
    CreateAdminUserView,
    DeleteAdminUserView,
    UpdateAdminUserView,
    AdminUserListView,
)

urlpatterns = [
    # 登录和退出登录接口
    # 登录接口
    path('login/', LoginView.as_view()),
    # 退出登录接口
    path('logout/', LogoutView.as_view()),

    # 获取菜单列表
    path('menu_list/', MenuListView.as_view()),

    # 资源接口
    # 获取资源列表
    path('resources_list/', ResourceListView.as_view()),
    # 根据角色获取资源
    path('resources_get/', GetResourceAPIView.as_view()),

    # 接口接口
    # 创建新街口
    path('interface_create/', ResourceInterfaceCreateView.as_view()),
    # 更新特定接口的资源列表
    path('interface_update/<int:role_id>/', ResourceInterfaceUpdateView.as_view()),
    # 删除特定接口
    path('interface_delete/<int:role_id>/', ResourceInterfaceDeleteView.as_view()),
    # 创建新接口及分页查询接口列表
    path('interface_list/', ResourceInterfaceListView.as_view()),

    # 角色接口
    # 创建新角色
    path('roles_create/', CreateRoleView.as_view()),
    # 更新特定角色的资源列表
    path('roles_update/<int:role_id>/', UpdateRoleView.as_view()),
    # 删除特定角色
    path('roles_delete/<int:role_id>/', DeleteRoleView.as_view()),
    # 创建新角色及分页查询角色列表
    path('roles_list/', RoleListView.as_view()),

    # 用户接口
    # 创建新用户
    path('adminUser_create/', CreateAdminUserView.as_view()),
    # 根据用户ID删除用户
    path('adminUser_delete/<int:pk>/', DeleteAdminUserView.as_view()),
    # 根据用户ID更新用户信息
    path('adminUser_update/<int:pk>/', UpdateAdminUserView.as_view()),
    # 列出所有用户
    path('adminUser_list/', AdminUserListView.as_view()),
]